Interface for trimming videos

ABSTRACT

A graphical user interface for trimming a video may include a timeline representation of a duration of the video. A trim duration for the video may be selected based on movement of the timeline representation. The amount of time represented by a portion of the timeline representation may be independent of the duration of the video. The movement of the timeline representation may correspond to moment through the duration of the video at a constant scale regardless of the duration of the video.

FIELD

This disclosure relates to an interface for trimming videos.

BACKGROUND

Handles may be moved along a scrubber (video progress bar) to set a trimduration for a video. Movement of the handles along the scrubber maycorrespond to movement through the duration of the video content atnon-constant scale. Handles may be small and difficult to manipulate.The use of the handles to set a trim duration for a video may not beintuitive and may not enable precise control in user determination ofthe trim duration.

SUMMARY

This disclosure relates to an interface for trimming videos. Atouchscreen display may be configured to present video content andreceive user input during the presentation of the video content. Thetouchscreen display may be configured to generate output signalsindicating location of a user's engagement with the touchscreen display.The video content may have a duration. A graphical user interface andthe video content may be presented on the touchscreen display. Thegraphical user interface may include interface elements and mayfacilitate interaction of the user with one or more of the interfaceelements via the user input. The interface elements may include a trimelement, and/or other interface elements. User interaction with the trimelement may be determined. Responsive to the user interaction with thetrim element, a trim timeline element may be presented. The trimtimeline element may include a timeline representation of the durationof the video content. The trim timeline element may enable selection ofa trim duration for the video content based on movement of the timelinerepresentation. A time amount of the duration represented by a portionof the timeline representation may be set independent of the duration ofthe video content such that the movement of the timeline representationcorresponds to movement through the duration at a constant scaleregardless of the duration. User interaction with the trim timelineelement to move the timeline representation may be determined. The trimduration for the video content may be determined based on the movementof the timeline representation and/or other information. Trimmed videocontent may be generated based on the trim duration and/or otherinformation.

A system that presents an interface for trimming videos may include oneor more electronic storage, touchscreen display, processor and/or othercomponents. The touchscreen display may be configured to present videocontent, graphical user interface, and/or other information. Thetouchscreen display may be configured to receive user input during thepresentation of the video content. The touchscreen display may beconfigured to generate output signals indicating location of a user'sengagement with the touchscreen display.

The electronic storage may store information defining video, informationrelating to video content, information relating to graphical userinterface, information relating to interface elements of the graphicaluser interface, information relating to trimming of video content,information relating to trim duration, information relating to trimmedvideo content and/or other information.

Content of one or more videos may be referred to as video content. Videocontent may have a duration. Video content may include visual contentviewable as a function of progress through the duration of the videocontent.

The processor(s) may be configured by machine-readable instructions.Executing the machine-readable instructions may cause the processor(s)to facilitate presenting an interface for trimming videos. Themachine-readable instructions may include one or more computer programcomponents. The computer program components may include one or more of apresentation component, a user interaction component, a trim durationcomponent, a trimmed video content component, and/or other computerprogram components.

The presentation component may be configured to present one or moregraphical user interfaces, the video content, and/or other informationon the touchscreen display. The graphical user interface(s) may includeinterface elements. The graphical user interface(s) may facilitateinteraction of the user with one or more of the interface elements viathe user input received through the touchscreen display and/or otheruser input. The interface elements may include a trim element, a trimtimeline element, and/or other interface elements. In someimplementations, the interface elements may further include a trimposition element. In some implementations, the interface elements mayfurther include one or more handle elements. In some implementations,the interface elements may include a floating shortcut element. In someimplementations, the interface elements may further include a summarytrim element.

The presentation component may be configured to present one or moreinterface elements responsive to user interaction with one or more otherinterface elements and/or other information. The presentation componentmay be configured to, responsive to user interaction with the trimelement, present the trim timeline element. The trim timeline elementmay include a timeline representation of the duration of the videocontent. The trim timeline element may enable selection of a trimduration for the video content based on movement of the timelinerepresentation. A time amount of the duration represented by a portionof the timeline representation may be set independent of the duration ofthe video content such that the movement of the timeline representationcorresponds to movement through the duration at a constant scaleregardless of the duration of the video content. In someimplementations, the trim position element may be presented on top ofthe timeline representation to indicate the current play position forthe video content.

The presentation component may be configured to, responsive to movementof the timeline representation based on the user interaction with thetrim timeline element, present a first handle element. The first handleelement may represent a first end of the trim duration. The presentationcomponent may be configured to, responsive to fixing of the trimduration, present a second handle element. The second handle element mayrepresent a second end of the trim duration. The first handle elementand/or the second handle element may be manipulatable along the timelinerepresentation to change the trim duration.

In some implementations, the first handle element and/or the secondhandle element may be presented as one or more floating shortcutelements within the timeline representation based on a current view ofthe timeline representation not including the first end and/or thesecond end of the trim duration and/or other information.

The presentation component may be configured to present the summary trimelement. The summary trim element may indicate a relative position ofthe trim duration within the duration.

The user interaction component may be configured to determine userinteraction with one or more of the interface elements. The userinteraction component may be configured to determine user interactionwith one or more of trim element, trim timeline element, trim positionelement, first handle element, second handle element, summary trimelement, and/or other interface elements. For example, the userinteraction component may be configured to determine user interactionwith the trim element. The user interaction component may be configuredto determine user interaction with the trim timeline element to move thetimeline representation. The user interaction with the trim timelineelement to move the timeline representation may include dragging thetimeline representation. The user interaction with the trim timelineelement to move the timeline representation may include engaging a playelement to cause playback of the video content.

The movement of the timeline representation based on the userinteraction with the trim timeline element may cause the current playposition for the video content to be changed. The movement of thetimeline representation based on the user interaction with the trimtimeline element may cause the first handle element to be presented.

The user interaction component may be configured to determine userinteraction with one or more of the interface elements (e.g., the trimelement) to fix the trim duration. Fixing of the trim duration may causethe second handle element to be presented.

The user interaction component may be configured to determine userinteraction with the first handle element and/or the second handleelement. The user interaction with the first handle element and/or thesecond handle element may include manipulation of the first handleelement and/or the second handle element. The first handle elementand/or the second handle element may be manipulated along the timelinerepresentation to change the trim duration.

The user interaction component may be configured to determine userinteraction with the floating shortcut element(s). The user interactionwith a floating shortcut element may cause movement of the timelinerepresentation to include the corresponding end (the first end, thesecond end) of the trim duration within the current view of the timelinerepresentation.

The trim duration component may be configured to determine the trimduration for the video content based on the movement of the timelinerepresentation and/or other information. The movement of the timelinerepresentation may be caused by dragging of the timeline representationand/or playback of the video content. The relative position of the trimduration within the duration of the video content may be indicated bythe summary trim element.

The trimmed video content component may be configured to generatetrimmed video content based on the trim duration and/or otherinformation. The trimmed video content may include the visual content ofthe video content within the trim duration.

These and other objects, features, and characteristics of the systemand/or method disclosed herein, as well as the methods of operation andfunctions of the related elements of structure and the combination ofparts and economies of manufacture, will become more apparent uponconsideration of the following description and the appended claims withreference to the accompanying drawings, all of which form a part of thisspecification, wherein like reference numerals designate correspondingparts in the various figures. It is to be expressly understood, however,that the drawings are for the purpose of illustration and descriptiononly and are not intended as a definition of the limits of theinvention. As used in the specification and in the claims, the singularform of “a,” “an,” and “the” include plural referents unless the contextclearly dictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system that presents an interface for trimmingvideos.

FIG. 2 illustrates a method for presenting an interface for trimmingvideos.

FIGS. 3A, 3B, 3C, 3D, 3E, and 3F illustrate example graphical userinterface and interface elements for trimming videos.

DETAILED DESCRIPTION

FIG. 1 illustrates a system 10 for presenting an interface for trimmingvideos. The system 10 may include one or more of a processor 11, aninterface 12 (e.g., bus, wireless interface), an electronic storage 13,a touchscreen display 14, and/or other components. The touchscreendisplay 14 may be configured to present video content and receive userinput during the presentation of the video content. The touchscreendisplay 14 may be configured to generate output signals indicatinglocation of a user's engagement with the touchscreen display 14. Thevideo content may have a duration. A graphical user interface and thevideo content may be presented on the touchscreen display 14.

The graphical user interface may include interface elements and mayfacilitate interaction of the user with one or more of the interfaceelements via the user input. The interface elements may include a trimelement, and/or other interface elements. User interaction with the trimelement may be determined. Responsive to the user interaction with thetrim element, a trim timeline element may be presented. The trimtimeline element may include a timeline representation of the durationof the video content. The trim timeline element may enable selection ofa trim duration for the video content based on movement of the timelinerepresentation. A time amount of the duration represented by a portionof the timeline representation may be set independent of the duration ofthe video content such that the movement of the timeline representationcorresponds to movement through the duration at a constant scaleregardless of the duration. User interaction with the trim timelineelement to move the timeline representation may be determined. The trimduration for the video content may be determined based on the movementof the timeline representation and/or other information. Trimmed videocontent may be generated based on the trim duration and/or otherinformation.

The electronic storage 13 may be configured to include electronicstorage medium that electronically stores information. The electronicstorage 13 may store software algorithms, information determined by theprocessor 11, information received remotely, and/or other informationthat enables the system 10 to function properly. For example, theelectronic storage 13 may store information defining video, informationrelating to video content, information relating to graphical userinterface, information relating to interface elements of the graphicaluser interface, information relating to trimming of video content,information relating to trim duration, information relating to trimmedvideo content and/or other information.

Content of one or more videos may be referred to as video content. Videocontent may have a duration. That is, a video may include video contenthaving a duration. A duration may be defined in terms of time durationsand/or frame numbers. For example, video content of a video may have atime duration of 60 seconds. Video content of a video may have 1800video frames. Video content having 1800 video frames may have a playtime duration of 60 seconds when viewed at 30 frames per second. Otherdurations, time durations, and frame numbers are contemplated.

Video content may include visual content, audio content, and/or othercontent. For example, video content may include visual content viewableas a function of progress through the duration of the video content,audio content playable as a function of progress through the duration ofthe video content, and/or other content that may be played back as afunction of progress through the duration of the video content.

Visual content may refer to content of one or more images and/or one ormore videos that may be consumed visually. For example, visual contentmay be included within one or more image and/or one or more video framesof a video. The video frame(s) may define the visual content of thevideo content. That is, video content may include video frame(s) thatdefine the visual content of the video content. Video frame(s) maydefine visual content viewable as a function of progress through theduration of the video content. A video frame may include an image of thevideo content at a moment within the duration of the video content.Visual content may be generated based on light received within a fieldof view of a single image sensor or within fields of view of multipleimage sensors during a capture period.

Audio content may include audio/sound captured (e.g., by soundsensor(s), microphone(s)) with the capture of the visual content and/oraudio/sound provided as an accompaniment for the visual content. Audiocontent may include one or more of voices, activities, songs, music,and/or other audio/sounds. For example, audio content may include soundscaptured by a single sound sensor or an array of sound sensors. Thesound sensor(s) may receive and convert sounds into output signals. Theoutput signals may convey sound information and/or other information.The sound information may define audio content in one or more formats,such as WAV, MP3, MP4, RAW. Audio content may include audio/soundgenerated by one or more computing devices, such as procedural audio.Audio content may be synchronized with the visual content. For example,audio content may include music, song, and/or soundtrack, and the visualcontent of the video content may be synchronized with music, song,and/or soundtrack.

The touchscreen display 14 may be configured to present video content,graphical user interface, and/or other information. The touchscreendisplay 14 may be configured to receive user input during thepresentation of the video content. The touchscreen display 14 may beconfigured to generate output signals indicating location on thetouchscreen display 14 of a user's engagement with the touchscreendisplay 14. User input (e.g., for video content, for video applicationto trim video content) may be received/determined based on thetouchscreen output signals. For example, the touchscreen display 14 mayinclude a touchscreen display of a mobile device (e.g., camera,smartphone, smartwatch, tablet, laptop) or a desktop device (e.g., touchmonitor), and user may engage with the touchscreen display 14 to provideuser input for video content presented on the touchscreen display 14and/or video application used to trim the video content. In someimplementations, user input may be provided through user engagement withother user interface devices, such as a keyboard, a mouse, a trackpad,and/or user interface devices. For example, video content and graphicaluser interface may be presented on a non-touchscreen display, and userinteraction with one or more elements of the graphical user interfacemay be determined and/or facilitated through the user's engagement witha mouse.

The touchscreen display 14 may include one or more touch-sensitivescreens and/or other components. A user may engage with the touchscreendisplay 14 by touching one or more portions of a touch-sensitive screen(e.g., with one or more fingers, stylus). A user may engage with thetouchscreen display 14 at a moment in time, at multiple moments in time,during a period, and/or during multiple periods. A user may tap on ormove along the touchscreen display 14 to interact with video contentpresented the touchscreen display 14 and/or to interact with anapplication for trimming video content. For example, a user may tap onone or more portions of the touchscreen display 14 corresponding to oneor elements of the graphical user interface presented on the touchscreendisplay 14 to interact (e.g., engage, toggle, manipulate) with theelement(s). A user may make a moving motion (e.g., holding one or morefingers on the touchscreen display 14 and moving the finger(s) in one ormore particular directions) to effectuate changes to a corresponding oneor more elements of the graphical user interface presented on thetouchscreen display 14.

The processor 11 may be configured to provide information processingcapabilities in the system 10. As such, the processor 11 may compriseone or more of a digital processor, an analog processor, a digitalcircuit designed to process information, a central processing unit, agraphics processing unit, a microcontroller, an analog circuit designedto process information, a state machine, and/or other mechanisms forelectronically processing information. The processor 11 may beconfigured to execute one or more machine-readable instructions 100 tofacilitate presenting an interface for trimming videos. Themachine-readable instructions 100 may include one or more computerprogram components. The machine-readable instructions 100 may includeone or more of a presentation component 102, a user interactioncomponent 104, a trim duration component 106, a trimmed video contentcomponent 108, and/or other computer program components.

The presentation component 102 may be configured to present one or moregraphical user interfaces, the video content, and/or other informationon the touchscreen display. A graphical user interface may refer to auser interface that enables a user to interact with the system 10through one or more interface elements. A graphical user interface maybe static or dynamic. A graphical user interface may include a staticconfiguration of interface elements and/or include dynamicconfigurations of interface elements that changes (e.g., with time,based on user interaction with one or more interface elements). Multipleones of interface elements may be presented/included within a graphicaluser interface at the same time, may be presented/included within agraphical user interface at different times, and/or may bepresented/included within a graphical user interface responsive to userinteraction with one or more other interface elements and/or otherinformation.

An interface element may refer to a graphical element of the userinterface, such as windows, icons, buttons, graphics, and/or othervisual indicators. An interface element may visually provide informationand/or enable a user to provide inputs to the system 10. For example, aninterface element may visually provide information determined by thesystem 10 and/or a user may interact (e.g., engage, toggle, manipulate)with an interface element to provide one or more input to the system 10.A graphical user interface may facilitate interaction of the user withone or more of the interface elements via the user input receivedthrough one or more user interface devices (e.g., the touchscreendisplay 14, a keyboard, a mouse, a trackpad) and/or other user input.For example, a graphical user interface present/include the interfaceelements in a particular arrangement and enable the user to interactwith individual interface elements by engaging with locationscorresponding to the individual interface elements on the touchscreendisplay 14.

The interface elements may include one or more of a trim element, a trimtimeline element, a trim position element, a handle element, a floatingshortcut element, a summary trim element, and/or other interfaceelements. A trim element may refer to an interface element that enablesa user to provide input to the system 10 to start trimming of a video.For example, a trim element may be presented/included within thegraphical user interface as a button and user interaction (e.g.,tapping, clicking on) with the button may provide one or morecommands/information to the system 10 to start a trimming mode and/or atrimming operation. In the trimming mode and/or the trimming operation,the graphical user interface may provide with one or more interfaceelements that may be interacted by the user to determine a trim durationfor the video.

A trim timeline element may refer to an interface element that visuallyrepresents the duration of the video content. The trim timeline elementmay include one or more timeline representations of the duration of thevideo content. The trim timeline element may refer to an interfaceelement that enables a user to provide input to the system 10 based onmovement of a timeline representation to determine the trim duration forthe video. The trim timeline element may enable selection of a trimduration for the video content based on movement of a timelinerepresentation. A certain amount of movement of the timelinerepresentation (e.g., reverse movement by a certain amount, forwardmovement by a certain amount) may correspond to movement through theduration of the video content at a constant scale regardless of theduration of the video content. The time amount of the duration of thevideo content represented by a portion of the timeline representation,rather than being determined based on the duration of the video content,may be set independent of the duration of the video content.

For example, a traditional scrubber (video progress bar) may representthe duration of the video content. The scrubber may have a certain size(e.g., length) within the graphical user interface. The size of thescrubber within the graphical user interface may represent the durationof the video content, and a portion (e.g., segment) of the scrubber maycorrespond to a portion of the duration of the video content at anon-constant scale. For example, for video content with a duration often minutes, the length of the scrubber may represent ten minutes andten percent of the length of the scrubber may correspond to one minuteof the duration of the video content. On the other hand, for videocontent with a duration of one minute, the length of the scrubber mayrepresent one minute and ten percent of the length of the scrubber maycorrespond to six seconds of the duration of the video content. Atraditional scrubber may enable determination of a trim duration forvideo content via movement of handles on one or more ends of thetraditional scrubber. However, because movement of the handles along thescrubber correspond to movement through the duration of the videocontent at non-constant scale (same amount of movement of the handlecorresponding to different time amount depending on the duration of thevideo content), the use of the handles may not be intuitive and may notenable precise control in user determination of the trim duration forthe video content.

The timeline representation of the duration within the trim timelineelement, on the other hand, may represent a certain time amountregardless of the duration of the video content. The timelinerepresentation may have a certain size (e.g., length) within thegraphical user interface. The size of the timeline representation withinthe graphical user interface may represent a certain time amount ratherthan the entire duration of the video content. A portion (e.g., segment)of the timeline representation may correspond to a fixed time duration.Setting the time amount represented by a portion of the timelinerepresentation independent of the duration of the video content mayresult in the movement of the timeline representation corresponding tomovement through the duration at a constant scale regardless of theduration of the video content

For example, for video content with durations of ten minutes and oneminute, ten percent of the length of the scrubber may correspond to tenseconds of the duration of the video content. Other time amountcorrespondence is contemplated. The time amount represented by thetimeline representation may be set based on one or more defaults and/orbased on user input. The movement of the timeline representationcorresponding to movement through the duration of the video content at aconstant scale may make it easier for users to control the amount ofduration of the video content to be included within the trim duration.Because the same amount of movement of the timeline representationcorresponds to the same amount of the duration of the video contentregardless of the duration of the video content, users may learn toprecisely control the trim duration based on repeated movement of thetimeline representation.

The timeline representation may enable selection (e.g., initialselection) of a trim duration for the video content based on movement ofa timeline representation. That is, rather than requiring a user to usemovement of one or more handles along the timeline representation todetermine the trim duration, the user may set the trim duration bymoving the timeline representation itself. For example, the user maychange the trim duration for the video content by moving (e.g.,dragging) the timeline representation to the left or right/up or down to“draw” out the desired trim duration. Moving the timelinerepresentation, which is bigger than handles, to determine the trimduration may be easier and more intuitive than use of the handles. Suchselection of the trim duration may provide intuitive and granularcontrol over finely tuned start/stop points of the trim duration, andmay enable precise control in user determination of the trim durationfor the video content. Such selection of the trim duration may providemore fluid experience in setting trim duration than usage of handles. Insome implementations, one or more handles may be manipulated after theinitial selection of a trim duration for the video content based onmovement of a timeline representation, and the handle(s) may bemanipulated to adjust the start/stop points of the trim duration.

A trim position element may refer to an interface element that visuallyrepresents current trim position for the video content. The current trimposition may refer to the current positioning of an end of the trimduration. One side of the trim position element may depict portion ofthe duration of the video content included within the trim duration andthe other side of the trim position element may depict portions of theduration of the video content not included within the trim duration. Themovement of the timeline representation may cause change in the trimpositions of the video content (changing which time points of the videocontent are included within the trim duration), and the trim positionelement may visually indicate the current time position of the videocontent. A trim position element may visually represent the current playposition for the video content. The movement of the timelinerepresentation may cause change in the play position of the videocontent (changing which time points of the video content is beingpresented on the touchscreen display 14), and the trim position elementmay visually indicate the current time point of the video content thatis being presented on the touchscreen display 14.

In some implementations, the trim position element may be presented ontop of the timeline representation to indicate the current play positionfor the video content. The trim position element may be located at themiddle of the timeline representation and/or at other locations alongthe timeline representation. In some implementations, the movement ofthe timeline representation to select the trim duration may includemovement of the timeline representation along one or more sides of thetrim position element. For example, the movement of the timelinerepresentation may include the user dragging the timeline representationto the left or right/up or down of the trim position element.

A handle element may refer to an interface element that visuallyrepresents an end of a trim duration for the video content. For example,the graphical user interface may present/include two handle elementsalong the timeline representation, with one handle element representingone end (e.g., beginning) of the trim duration and the other handleelement representing other end (e.g., ending) of the trim duration.After the trim duration has been initially determined based on movementof the timeline representation, one or both of the handle elements maybe manipulatable along the timeline representation to change the trimduration (e.g., shorten/lengthen trim duration, change beginning/endingof the trim duration).

A floating shortcut element may refer to an interface element thatvisually represents a handle element with a corresponding end of thetrim duration not being within the current view of the timelinerepresentation. Based on movement of the timeline representation, one orboth ends of the trim duration may not be presented/included within thegraphical user interface. Based on an end of the trim duration not beingincluded within the current view of the timeline representation, thecorresponding handle element may be presented as a floating shortcutelement within the timeline representation. User interaction (e.g.,tapping, clicking on) with a floating shortcut element may provide oneor more commands/information to the system 10 to move the timelinerepresentation to include the corresponding end of the trim duration.That is, the floating shortcut element may operate as a shortcut tosee/go to the corresponding end of the trim duration.

A summary trim element may refer to an interface element that visuallyrepresents one or more trim durations within the graphical userinterface. The summary trim element may visually indicate relativeposition(s) of the trim duration(s) within the duration. For example,the duration of the video content may be represented as a bar,portion(s) of the duration within trim duration(s) may be representeddifferently (e.g., in different color/pattern) than other portion(s) ofthe duration of the video content within the bar.

The presentation component 102 may be configured to present one or moreinterface elements responsive to user interaction with one or more otherinterface elements and/or other information. For example, thepresentation component 102 may be configured to, responsive to userinteraction with the trim element, present the trim timeline elementand/or other interface element. The presentation component 102 may beconfigured to, responsive to movement of the timeline representationbased on the user interaction with the trim timeline element, present ahandle element representing one end of the trim duration. Thepresentation component 102 may be configured to, responsive to fixing ofthe trim duration, present another handle element representing anotherend of the trim duration.

FIGS. 3A, 3B, 3C, 3D, 3E, and 3F illustrate example graphical userinterface and interface elements for trimming videos. These graphicaluser interfaces and interface elements are provided merely as examples,and the arrangement and visual aspects of the graphical user interfacesand interface elements may vary depending on the implementation. In someimplementations, the graphical user interfaces and/or interface elementsmay include additional features and/or alternative features.

FIGS. 3A, 3B, 3C, and 3D illustrate a graphical user interface 300.Referring to FIG. 3A, the graphical user interface 300 may include avideo content playback portion 302. The video content playback portion302 may include presentation of video content. The graphical userinterface 300 may include a scrubber 304 and a play position element306. The scrubber 304 may represent the duration of the video contentbeing presented within the video content playback portion 302, and theplay position element 306 may visually represent current play positionfor the video content. The play position element 306 may display timeposition (e.g., minute:second) of the video content that is beingpresented within the video content playback portion 302. The graphicaluser interface 300 may include one or more interface elements to provideone or more commands to the system 10. For example, the graphical userinterface 300 may include a trim element 308 (e.g., trim button), and auser may interact (e.g., tap, click on) the trim element to provide oneor more commands/information to the system 10 to start a trimming modeand/or a trimming operation.

Responsive to user interaction with the trim element 308, the graphicaluser interface 300 may be changed as shown in FIG. 3B. Responsive touser interaction with the trim element 308, the graphical user interface300 may be changed to present/include a trim timeline element 314 and/orother interface elements. In some implementations, the scrubber 304 maybe changed into the trim timeline element 314.

In some implementation, rather than changing an existing graphical userinterface, a new graphical user interface may be presented.

The trim timeline element 314 may include a timeline representation ofthe duration of the video content. A portion or entirety of the trimtimeline element 314 may be the timeline representation of the durationof the video content. A trim position element 316 may be presented ontop of the trim timeline element 314. The trim position element 316 maybe located at the middle of the trim timeline element 314. The trimposition element 316 may visually represent current trim position forthe video content. The trim position element 316 may indicate thecurrent play position for the video content. The trim position element316 may display time position (e.g., minute:second) of the video contentthat is being presented within the video content playback portion 302and/or the current trim position for the video content.

The graphical user interface 300 may include a trim duration settingelement 318. The trim duration setting element 318 may refer to aninterface element that enables a user to provide input to the system 10to set the trim duration for the video content to a certain duration.The trim duration setting element 318 may refer to an interface elementthat enables a user to provide input to the system 10 to set the trimduration for the video content to a duration determined based onmovement of the trim timeline element 314/timeline representation. Forexample, the trim duration setting element 318 may be presented/includedwithin the graphical user interface 300 as a button and user interaction(e.g., tapping, clicking on) with the button may provide one or morecommands/information to the system 10 to set the trim duration for thevideo content.

The trim timeline element 314/timeline representation of the duration ofthe video content may be moved with respect to the trim position element316 to determine the trim duration for the video content. The timeamount of the duration of the video content represented by a portion ofthe trim timeline element 314/timeline representation may be setindependent of the duration of the video content. A certain amount ofmovement of the trim timeline element 314/timeline representation (e.g.,reverse movement by a certain amount, forward movement by a certainamount) may correspond to movement through the duration of the videocontent at a constant scale regardless of the duration of the videocontent.

For example, referring to FIG. 3C, user interaction with the trimtimeline element 314/timeline representation may have moved the trimtimeline element 314/timeline representation to one side (the left) ofthe time position element 316. A portion 322 of the trim timelineelement 314/timeline representation may correspond to the portion thatwas moved to one side (the left) of the trim position element 316. Themovement of the portion 322 to one side (the left) of the trim positionelement 316 may cause the corresponding portion of the duration of thevideo content to be included within a trim duration for the videocontent. The relative position of the trim duration within the durationof the video content may be visually represented within a summary trimelement 324. For example, a portion 326 of the summary trim element 324may be represented differently (e.g., in different color/pattern) thanother portion(s) of the duration of the video content within the summarytrim element 324. In some implementations, multiple portions of theduration of the video content may be included within a trim duration. Insome implementations, multiple trim durations including non-adjacentportions of the duration of the video content may be determined. Forexample, referring to FIG. 3E, portions 326, 356 of the summary trimelement 324 may be represented differently within the summary trimelement 324 based on the two corresponding portions of the duration ofthe video content being included within the trim duration(s). In someimplementations, user interaction with the summary trim element 324 maychange one or more trim durations. For example, a user may drag theportions 326, 356 to change which portions of the duration of the videocontent are included within the trim duration(s). The user may interactwith the portions 326, 356 to remove the portion(s) from the trimduration(s).

Responsive to movement of the trim timeline element 314/timelinerepresentation based on the user interaction, a handle element 320 maybe presented. The handle element 320 may represent one end (e.g.,beginning, ending) of the trim duration. For instance, the handleelement 320 may represent a point in the within the duration of thevideo content that was represented by the middle portion of the trimtimeline element 314/timeline representation in FIG. 3B. Movement of thetrim timeline element 314/timeline may have caused this portion of thetrim timeline element 314/timeline representation to be pushed to theleft of the trim position element 316 in FIG. 3C. The handle element 320may be located at this portion of the trim timeline element 314/timelinerepresentation that was pushed to the left of the trim position element316.

Referring to FIG. 3D, responsive to fixing of the trim duration, ahandle element 330 may be presented. Fixing of the trim duration mayinclude setting in place of the trim duration based on prior movement ofthe trim timeline element 314/timeline representation. The trim durationmay be fixed responsive to user interaction with the trim durationsetting element 318, other user interaction with the graphical userinterface 300, and/or other information. The handle element 330 mayrepresent the other end (e.g., ending, beginning) of the trim duration.The handle elements 320, 330 may be manipulatable along the trimtimeline element 314/timeline representation to change the trimduration.

In some implementations, the movement of the trim timeline element314/timeline representation may cause one or both ends of the trimduration to not be presented/included within the graphical userinterface. For example, referring to FIG. 3F, the movement of the trimtimeline element 314/timeline representation may cause one end(beginning) of the time duration corresponding to the handle element 320to be presented/included within the graphical user interface and theother end (ending) of the time duration corresponding to the handleelement 330 to not be presented/included within the graphical userinterface. Based on the end (ending) of the trim duration not beingincluded within the current view of the timeline representation, thecorresponding handle element 330 may be presented as a floating shortcutelement 340 within the timeline representation. User interaction (e.g.,tapping, clicking on) with the floating shortcut element 340 may provideone or more commands/information to the system 10 to move the timelinerepresentation to include the corresponding end (ending) of the trimduration. That is, the floating shortcut element 340 may operate as ashortcut to see/go to the corresponding end (ending) of the trimduration. As shown in FIG. 3F, the movement of the timelinerepresentation to include the ending of the trim duration may result inthe handle element 330 being presented/included within the graphicaluser interface. The handle element 320 may not be presented/includedwithin the graphical user interface, and the handle element 320 may bepresented as a floating shortcut element 350 within the timelinerepresentation. User interaction (e.g., tapping, clicking on) with thefloating shortcut element 350 may provide one or morecommands/information to the system 10 to move the timelinerepresentation to include the corresponding end (beginning) of the trimduration. That is, the floating shortcut element 350 may operate as ashortcut to see/go to the corresponding end (beginning) of the trimduration.

The user interaction component 104 may be configured to determine userinteraction with one or more of the interface elements. User interactionwith interface element(s) may be determined based on user engagementwith one or more user interface devices, such as the touchscreen display14, a keyboard, a mouse, a trackpad, and/or other user interfacedevices. For example, based on output signals generated by thetouchscreen display 14, the location of user engagement with thetouchscreen display 14 may be determined, and the location of thetouchscreen display 14 may correspond to one or more user interactedinterface elements.

The user interaction component 104 may be configured to determine userinteraction with one or more of trim element, trim timeline element,trim position element, handle element, handle element, summary trimelement, and/or other interface elements. For example, the userinteraction component 104 may be configured to determine userinteraction with the trim element (to start a trimming mode and/or atrimming operation). The user interaction component 104 may beconfigured to determine user interaction with the trim timeline elementto move the timeline representation. The movement of the timelinerepresentation based on the user interaction with the trim timelineelement may cause a handle element representing one end (e.g.,beginning, ending) of the trim duration to be presented. The movement ofthe timeline representation based on the user interaction with the trimtimeline element may cause the current play position for the videocontent to be changed. That is, different moments within the duration ofthe video content may be presented based on movement of the timelinerepresentation.

In some implementations, the user interaction with the trim timelineelement to move the timeline representation may include dragging thetrim timeline element/timeline representation (e.g., left or right, upor down). In some implementations, the user interaction with the trimtimeline element to move the timeline representation may includeengaging a play element to cause playback of the video content. Forexample, referring to FIG. 3C, the user may have dragged the trimtimeline element 314/timeline representation to the left of the trimposition element 316, and the portion 322 may correspond to the portionthat was moved to the left of the trim position element 316. As anotherexample, the user may have interacted with a play element, and userinteraction (e.g., tapping, clicking on) with the play element mayprovide one or more commands/information to the system 10 to causeplayback of the video content. The playback of the video content maycause the trim timeline element 314/timeline representation to move tothe left, and the portion 322 may correspond to the portion that wasmoved to the left of the trim position element 316 during playback ofthe video content. The movement of the portion 322 to the left of thetrim position element 316 may cause the corresponding portion of theduration of the video content to be included within a trim duration forthe video content.

The user interaction component 104 may be configured to determine userinteraction with one or more of the interface elements (e.g., the trimelement, the trim duration setting element) to fix the trim duration.Fixing of the trim duration may cause another handle elementrepresenting another end (e.g., ending, beginning) of the trim durationto be presented.

The user interaction component 104 may be configured to determine userinteraction with one or more handle elements. The user interaction withat handle element may include manipulation of the handle element. Thehandle element may be manipulated along the timeline representation tochange the trim duration.

The user interaction component 104 may be configured to determine userinteraction with one or more floating shortcut elements. The userinteraction with a floating shortcut element may cause movement of thetimeline representation to include the corresponding end (beginning,ending) of the trim duration within the current view of the timelinerepresentation. Other determinations of user interaction with interfaceelements are contemplated.

The trim duration component 106 may be configured to determine the trimduration for the video content based on the movement of the timelinerepresentation and/or other information. The movement of the timelinerepresentation may be caused by dragging of the timeline representationand/or playback of the video content. The trim duration for the videocontent may be determined based on amount by which the timelinerepresentation has been moved by the user. For example, the trimduration for the video content may be determined to include portion(s)of the video content that has been moved past/across the trim positionelement. For example, referring to FIG. 3C, the portion 322 may includethe portion of the trim timeline element 314/timeline representationthat has been moved past/across the trim position element 316. The trimduration for the video content may be determined to include the portionof the duration of the video content corresponding to the portion 322.The relative position of the trim duration within the duration of thevideo content may be indicated by the portion 326 of the summary trimelement 324.

The trimmed video content component 108 may be configured to generatetrimmed video content based on the trim duration and/or otherinformation. The trimmed video content may include portion(s) of thevideo content corresponding to the portion(s) of the duration of thevideo content included within the trim duration. The trimmed videocontent may include the visual content, the audio content, and/or othercontent of the video content within the trim duration. That is, thetrimmed video content may include the visual content corresponding tothe portion(s) of the duration of the video content included within thetrim duration. The trimmed video content may include the audio contentcorresponding to the portion(s) of the duration of the video contentincluded within the trim duration. The trimmed video content may includeother content corresponding to the portion(s) of the duration of thevideo content included within the trim duration. In someimplementations, the trimmed video content component 108 may include oneor more effects within the trimmed video content. For example, based onthe trimmed video content including separate portions of the duration ofthe video content, the trimmed video content component 108 may includeone or more transition effects between the separate portions. Thetrimmed video content component 108 may include one or more audioeffects (e.g., soundtrack(s), changes in volume of soundtrack(s)) withinthe trimmed video content (e.g., changing soundtrack volume based oninclusion of highlight moments in the trimmed video content).

The trimmed video content may be generated as encoded video contentand/or as instructions for rending the trimmed video content. Forexample, the trimmed video content may be generated as an encodedversion of a particular video clip, and the video clip may be opened ina video player for presentation. The trimmed video content may begenerated as instructions identifying portions of the duration of thevideo content included within the trim duration and/or one or moreeffects to be included within the playback of the trimmed video content.A video player may use the instructions to retrieve the portions of thevideo content identified in the instructions and/or cause the effectsidentified in the instructions for presentation when the trimmed videocontent is opened/to be presented.

Trimmed video content information defining the trimmed video content(e.g., encoded video content, instructions) may be stored in one or morestorage media. For example, the trimmed video content information may bestored in the electronic storage 13, remote storage locations (storagemedia located at/accessible through a server), and/or other locations.

In some implementations, video content may include one or more ofspherical video content, virtual reality content, and/or other videocontent. Spherical video content and/or virtual reality content mayinclude visual content viewable from one or more points of view as afunction of progress through the progress length of thespherical/virtual reality video content.

Spherical video content may refer to video content generated throughcapture of multiple views from a location. Spherical video content maybe captured through the use of one or more image capture devices tocapture images/videos from a location. The captured images/videos may bestitched together to form the spherical video content. Spherical videocontent may include full spherical video content (360 degrees ofcapture) or partial spherical video content (less than 360 degrees ofcapture). Partial spherical video content may be referred to aspanoramic video content.

Visual content of spherical video content may be included within one ormore spherical video frames of the spherical video. The spherical videoframe(s) may define the visual content of the video content. That is,spherical video content may include spherical video frame(s) that definethe visual content of the spherical video content. Spherical videoframe(s) may define visual content viewable from a point of view (e.g.,within a sphere, center of a sphere) as a function of progress throughthe progress length of the spherical video content.

A spherical video frame may include a spherical image of the sphericalvideo content at a moment within the progress length of the sphericalvideo content. Visual content of spherical video content may begenerated based on light received within a field of view of a singleimage sensor or within fields of view of multiple image sensors during acapture period. For example, multiple images/videos captured by multiplecameras/image sensors may be combined/stitched together to form thevisual content of the spherical video content. The field of view ofcamera(s)/image sensor(s) may be moved/rotated (e.g., viamovement/rotation of optical element(s), such as lens, of the imagesensor(s)) to capture multiple images/videos from a location, which maybe combined/stitched together to form the visual content of thespherical video content.

For example, multiple images captured by multiple cameras/images sensorsat a moment in time may be combined/stitched together to form aspherical video frame for the moment in time. A spherical video framemay include a full spherical image capture (360-degrees of capture,including opposite poles) or a particular spherical image capture (lessthan 360-degrees of capture). A spherical image (e.g., spherical videoframe) may be comprised of multiple sub-images (sub-frames). Sub-imagesmay be generated by a single image sensor (e.g., at different times asthe field of view of the image sensor is rotated) or by multiple imagesensors (e.g., individual sub-images for a moment in time captured byindividual image sensors and combined/stitched together to form thespherical image).

In some implementations, spherical video content may be stored with atleast a 5.2K resolution. Using a 5.2K spherical video content may enableviewing windows (e.g., directed to a portion of a spherical video frame)for the spherical video content with resolution close to 1080 p. In someimplementations, spherical video content may include 12-bit videoframes. Other sizes and qualities of spherical video content (e.g.,5.6K, 8K+) are contemplated. In some implementations, spherical videocontent may be consumed as virtual reality content.

Virtual reality content may refer to video content that may be consumedvia virtual reality experience. Virtual reality content may associatedifferent directions within the virtual reality content with differentviewing directions, and a user may view a particular visual portion(e.g., visual content in a particular direction) within the virtualreality content by looking in a particular direction. For example, auser may use a virtual reality headset to change the user's direction ofview. The user's direction of view may correspond to a particulardirection of view within the virtual reality content. For example, aforward/north looking direction of view for a user may correspond to aforward/north direction of view within the virtual reality content.

Spherical video content and/or virtual reality content may have beencaptured at one or more locations. For example, spherical video contentand/or virtual reality content may have been captured from a stationaryposition (e.g., a seat in a stadium). Spherical video content and/orvirtual reality content may have been captured from a moving position(e.g., a moving bike). Spherical video content and/or virtual realitycontent may include video content captured from a path taken by theimage capture device(s) in the moving position. For example, sphericalvideo content and/or virtual reality content may include video contentcaptured by a spherical camera of a person walking around in a musicfestival.

While the present disclosure may be directed to video content, one ormore other implementations of the system may be configured for othertypes media content. Other types of media content may include one ormore of audio content (e.g., music, podcasts, audio books, and/or otheraudio content), multimedia presentations, images, slideshows, visualcontent (one or more images and/or videos), and/or other media content.

Implementations of the disclosure may be made in hardware, firmware,software, or any suitable combination thereof. Aspects of the disclosuremay be implemented as instructions stored on a machine-readable medium,which may be read and executed by one or more processors. Amachine-readable medium may include any mechanism for storing ortransmitting information in a form readable by a machine (e.g., acomputing device). For example, a tangible computer-readable storagemedium may include read-only memory, random access memory, magnetic diskstorage media, optical storage media, flash memory devices, and others,and a machine-readable transmission media may include forms ofpropagated signals, such as carrier waves, infrared signals, digitalsignals, and others. Firmware, software, routines, or instructions maybe described herein in terms of specific exemplary aspects andimplementations of the disclosure, and performing certain actions.

In some implementations, some or all of the functionalities attributedherein to the system 10 may be provided by external resources notincluded in the system 10. External resources may include hosts/sourcesof information, computing, and/or processing and/or other providers ofinformation, computing, and/or processing outside of the system 10.

Although the processor 11 and the electronic storage 13 are shown to beconnected to the interface 12 in FIG. 1, any communication medium may beused to facilitate interaction between any components of the system 10.One or more components of the system 10 may communicate with each otherthrough hard-wired communication, wireless communication, or both. Forexample, one or more components of the system 10 may communicate witheach other through a network. For example, the processor 11 maywirelessly communicate with the electronic storage 13. By way ofnon-limiting example, wireless communication may include one or more ofradio communication, Bluetooth communication, Wi-Fi communication,cellular communication, infrared communication, or other wirelesscommunication. Other types of communications are contemplated by thepresent disclosure.

Although the processor 11 is shown in FIG. 1 as a single entity, this isfor illustrative purposes only. In some implementations, the processor11 may comprise a plurality of processing units. These processing unitsmay be physically located within the same device, or the processor 11may represent processing functionality of a plurality of devicesoperating in coordination. The processor 11 may be configured to executeone or more components by software; hardware; firmware; some combinationof software, hardware, and/or firmware; and/or other mechanisms forconfiguring processing capabilities on the processor 11.

It should be appreciated that although computer components areillustrated in FIG. 1 as being co-located within a single processingunit, in implementations in which processor 11 comprises multipleprocessing units, one or more of computer program components may belocated remotely from the other computer program components. Whilecomputer program components are described as performing or beingconfigured to perform operations, computer program components maycomprise instructions which may program processor 11 and/or system 10 toperform the operation.

While computer program components are described herein as beingimplemented via processor 11 through machine-readable instructions 100,this is merely for ease of reference and is not meant to be limiting. Insome implementations, one or more functions of computer programcomponents described herein may be implemented via hardware (e.g.,dedicated chip, field-programmable gate array) rather than software. Oneor more functions of computer program components described herein may besoftware-implemented, hardware-implemented, or software andhardware-implemented

The description of the functionality provided by the different computerprogram components described herein is for illustrative purposes, and isnot intended to be limiting, as any of computer program components mayprovide more or less functionality than is described. For example, oneor more of computer program components may be eliminated, and some orall of its functionality may be provided by other computer programcomponents. As another example, processor 11 may be configured toexecute one or more additional computer program components that mayperform some or all of the functionality attributed to one or more ofcomputer program components described herein.

The electronic storage media of the electronic storage 13 may beprovided integrally (i.e., substantially non-removable) with one or morecomponents of the system 10 and/or removable storage that is connectableto one or more components of the system 10 via, for example, a port(e.g., a USB port, a Firewire port, etc.) or a drive (e.g., a diskdrive, etc.). The electronic storage 13 may include one or more ofoptically readable storage media (e.g., optical disks, etc.),magnetically readable storage media (e.g., magnetic tape, magnetic harddrive, floppy drive, etc.), electrical charge-based storage media (e.g.,EPROM, EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive,etc.), and/or other electronically readable storage media. Theelectronic storage 13 may be a separate component within the system 10,or the electronic storage 13 may be provided integrally with one or moreother components of the system 10 (e.g., the processor 11). Although theelectronic storage 13 is shown in FIG. 1 as a single entity, this is forillustrative purposes only. In some implementations, the electronicstorage 13 may comprise a plurality of storage units. These storageunits may be physically located within the same device, or theelectronic storage 13 may represent storage functionality of a pluralityof devices operating in coordination.

FIG. 2 illustrates method 200 for presenting an interface for trimmingvideos. The operations of method 200 presented below are intended to beillustrative. In some implementations, method 200 may be accomplishedwith one or more additional operations not described, and/or without oneor more of the operations discussed. In some implementations, two ormore of the operations may occur substantially simultaneously.

In some implementations, method 200 may be implemented in one or moreprocessing devices (e.g., a digital processor, an analog processor, adigital circuit designed to process information, a central processingunit, a graphics processing unit, a microcontroller, an analog circuitdesigned to process information, a state machine, and/or othermechanisms for electronically processing information). The one or moreprocessing devices may include one or more devices executing some or allof the operation of method 200 in response to instructions storedelectronically on one or more electronic storage mediums. The one ormore processing devices may include one or more devices configuredthrough hardware, firmware, and/or software to be specifically designedfor execution of one or more of the operations of method 200.

Referring to FIG. 2 and method 200, at operation 201, a graphical userinterface and video content may be presented on a touchscreen display.The touchscreen display may be configured to present the video contentand receive user input during the presentation of the video content. Thetouchscreen display may be configured to generate output signalsindicating location of a user's engagement with the touchscreen display.The video content may have a duration. The graphical user interface mayinclude interface elements and may facilitate interaction of the userwith one or more of the interface elements via the user input. Theinterface elements may include a trim element. In some implementation,operation 201 may be performed by a processor component the same as orsimilar to the presentation component 102 (Shown in FIG. 1 and describedherein).

At operation 202, user interaction with the trim element may bedetermined. In some implementations, operation 202 may be performed by aprocessor component the same as or similar to the user interactioncomponent 104 (Shown in FIG. 1 and described herein).

At operation 203, responsive to the user interaction with the trimelement, a trim timeline element may be presented. The trim timelineelement may include a timeline representation of the duration of thevideo content. The trim timeline element may enable selection of a trimduration for the video content based on movement of the timelinerepresentation. A time amount of the duration represented by a portionof the timeline representation may be set independent of the duration ofthe video content such that the movement of the timeline representationcorresponds to movement through the duration at a constant scaleregardless of the duration. In some implementations, operation 203 maybe performed by a processor component the same as or similar to thepresentation component 102 (Shown in FIG. 1 and described herein).

At operation 204, user interaction with the trim timeline element tomove the timeline representation may be determined. In someimplementations, operation 204 may be performed by a processor componentthe same as or similar to the user interaction component 104 (Shown inFIG. 1 and described herein).

At operation 205, the trim duration for the video content may bedetermined based on the movement of the timeline representation and/orother information. In some implementations, operation 205 may beperformed by a processor component the same as or similar to the trimduration component 106 (Shown in FIG. 1 and described herein).

At operation 206, trimmed video content may be generated based on thetrim duration and/or other information. In some implementations,operation 206 may be performed by a processor component the same as orsimilar to the trimmed video content component 108 (Shown in FIG. 1 anddescribed herein).

Although the system(s) and/or method(s) of this disclosure have beendescribed in detail for the purpose of illustration based on what iscurrently considered to be the most practical and preferredimplementations, it is to be understood that such detail is solely forthat purpose and that the disclosure is not limited to the disclosedimplementations, but, on the contrary, is intended to covermodifications and equivalent arrangements that are within the spirit andscope of the appended claims. For example, it is to be understood thatthe present disclosure contemplates that, to the extent possible, one ormore features of any implementation can be combined with one or morefeatures of any other implementation.

What is claimed is:
 1. A system that present an interface for trimming avideo, the system comprising: one or more physical processors configuredby machine-readable instructions to: present a graphical user interfaceand video content on a touchscreen display, the graphical user interfaceincluding interface elements and facilitating interaction of a user withone or more of the interface elements, wherein the interface elementsinclude: a trim timeline element, the trim timeline element including atimeline representation of a video duration of the video content andenabling selection of a trim duration for the video content based onmovement of the timeline representation; and a trim position elementthat stays fixed during the movement of the timeline representation;determine user interaction with the trim timeline element to move thetimeline representation; and determine a length of the trim duration forthe video content based on an amount by which the timelinerepresentation is moved across the trim position element, whereingreater movement of the timeline representation across the trim positionelement results in a longer length of the trim duration and lessermovement of the timeline representation across the trim position elementresults in a shorter length of the trim duration.
 2. The system of claim1, wherein the movement of the timeline representation based on the userinteraction with the trim timeline element causes a first handle elementto be presented, the first handle element representing a first end ofthe trim duration.
 3. The system of claim 2, wherein a second handleelement is presented to replace the trim position element based ondetermination of user interaction to fix the trim duration, the secondhandle element representing a second end of the trim duration.
 4. Thesystem of claim 3, wherein the first handle element or the second handleelement is manipulatable along the timeline representation to change thetrim duration.
 5. The system of claim 3, wherein responsive to a currentview of the timeline representation not including the first end of thetrim duration, a floating shortcut element for the first handle elementis presented within the timeline representation, the floating shortcutelement presented on top of the timeline representation, userinteraction with the floating shortcut element causing movement of thetimeline representation to include the first end of the trim durationwithin the current view of the timeline representation, further whereinresponsive to the current view of the timeline representation includingthe first end of the trim duration, the floating shortcut element is notpresented within the timeline representation.
 6. The system of claim 1,wherein the movement of the timeline representation based on the userinteraction with the trim timeline element causes a current playposition for the video content to be changed.
 7. The system of claim 6,wherein the trim position element indicate the current play position forthe video content.
 8. The system of claim 1, wherein the userinteraction with the trim timeline element to move the timelinerepresentation includes dragging the timeline representation.
 9. Thesystem of claim 1, wherein the user interaction with the trim timelineelement to move the timeline representation includes engaging a playelement to cause playback of the video content.
 10. The system of claim1, wherein a summary trim element is presented to indicate a relativeposition of the trim duration within the video duration of the videocontent.
 11. A method for presenting an interface for trimming a video,the method performed by a computing system including one or moreprocessors, the method comprising: presenting, by the computing system,a graphical user interface and video content on a touchscreen display,the graphical user interface including interface elements andfacilitating interaction of a user with one or more of the interfaceelements, wherein the interface elements include: a trim timelineelement, the trim timeline element including a timeline representationof a video duration of the video content and enabling selection of atrim duration for the video content based on movement of the timelinerepresentation; and a trim position element that stays fixed during themovement of the timeline representation; determining, by the computingsystem, user interaction with the trim timeline element to move thetimeline representation; and determining, by the computing system, alength of the trim duration for the video content based on an amount bywhich the timeline representation is moved across the trim positionelement, wherein greater movement of the timeline representation acrossthe trim position element results in a longer length of the trimduration and lesser movement of the timeline representation across thetrim position element results in a shorter length of the trim duration.12. The method of claim 11, wherein the movement of the timelinerepresentation based on the user interaction with the trim timelineelement causes a first handle element to be presented, the first handleelement representing a first end of the trim duration.
 13. The method ofclaim 12, wherein a second handle element is presented to replace thetrim position element based on determination of user interaction to fixthe trim duration, the second handle element representing a second endof the trim duration.
 14. The method of claim 13, wherein the firsthandle element or the second handle element is manipulatable along thetimeline representation to change the trim duration.
 15. The method ofclaim 13, wherein responsive to a current view of the timelinerepresentation not including the first end of the trim duration, afloating shortcut element for the first handle element is presentedwithin the timeline representation, the floating shortcut elementpresented on top of the timeline representation, user interaction withthe floating shortcut element causing movement of the timelinerepresentation to include the first end of the trim duration within thecurrent view of the timeline representation, further wherein responsiveto the current view of the timeline representation including the firstend of the trim duration, the floating shortcut element is not presentedwithin the timeline representation.
 16. The method of claim 11, whereinthe movement of the timeline representation based on the userinteraction with the trim timeline element causes a current playposition for the video content to be changed.
 17. The method of claim16, wherein the trim position element indicate the current play positionfor the video content.
 18. The method of claim 11, wherein the userinteraction with the trim timeline element to move the timelinerepresentation includes dragging the timeline representation.
 19. Themethod of claim 11, wherein the user interaction with the trim timelineelement to move the timeline representation includes engaging a playelement to cause playback of the video content.
 20. The method of claim11, wherein a summary trim element is presented to indicate a relativeposition of the trim duration within the video duration of the videocontent.